iT邦幫忙

2024 iThome 鐵人賽

DAY 7
0
Modern Web

Web3:從新手村開始系列 第 7

Lv7 新手訓練營 : Event Log

  • 分享至 

  • xImage
  •  

我們昨天介紹了智能合約的部分基礎實作,還有一個概念沒有被介紹到,那就是Event Log,至於什麼是Event Log,他又是為什麼被發明出來的,讓我們一起看看吧!

Event Log

在智能合約之中,像是:Etherscan contract tab....,Event Log 是一種用來記錄和發佈智能合約內部活動的機制,可以提供使用者查詢此地址的餘額(Balance)變化,後續將會介紹實作。當特定事件在智能合約內被觸發時,這些事件會被寫入區塊鏈中,作為不可更改的記錄。這些記錄對智能合約的運行沒有直接影響,但對外界(像是DApp前端或用戶)提供了重要信息,更利於追蹤合約狀態變化、監控合約活動,或對交易進行決斷。

Event Define

event Transfer(address indexed from, address indexed to, uint256 value);
event : 代表我們正在定義一個名為transfer的事件,會記錄from(address)到to(address)轉帳金額value的紀錄,並且會記錄在區塊鏈上,方便後續查詢。而index則是可以用來標記一些特定的參數,這些參數將會被索引,所以以這個例子來看,我們可以根據from,to來過濾事件。

Event/Transaction ?

Event(事件)主要用來記錄合約中發生的活動,它們不會影響合約的狀態。與Transaction(交易)不同,事件不能被直接調用或觸發,它們只是用來提供額外的資訊,提供外部使用。
總而言之,事件記錄在智能合約中扮演了重要的角色,不僅可以讓我們了解合約內部的運作,還能幫助應用程式及時反映合約的變動。對於開發者來說,合理使用事件可以提升合約的透明度和可監控性。


上一篇
Lv6 新手訓練營 : ERC-20
下一篇
Lv8 新手訓練營 : 去中心化世界的安全
系列文
Web3:從新手村開始17
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言